#include<stdio.h> 


//数组指针的用法 
//可以将二维数组的首地址传递到另一个函数里面。此时函数的形参就需要定义为数组指针
void fun(int(*p)[5],int x,int y)
{
	p[0][1]=101;
}


void test1()
{
	int a[3][5];//定义一个3行5列的二维数组
	int (*p)[5];//定义一个数组指针变量p,p+1挑一个有5个元素的整型数组

	printf("a=%p\n",a);//第0行的行地址
	printf("a+1=%p\n",a+1);//第1行的行地址，a与a+1跳一个有5个元素的整型数组

	p=a;

	printf("p=%p\n",p);
	printf("p+1=%p\n",p+1);//p+1跳一个5个整型元素的一维数组
}


void test2()
{
	int i, j;
	int a[3][5]={0};
	fun(a,3,5);
	for(i=0;i<3;i++)
	{
		for(j=0;j<5;j++)
		{
				printf("%4d",a[i][j]);
		}
		printf("\n");
	}
}
int main()
{
	//test1();


	test2();


	return 0;
}
